// --------------------------------------------------------Clearfix
.clearfix::before,
.clearfix::after {
  content: '';
  display: block;
  height: 0;
  line-height: 0;
  overflow: hidden;
  clear: both;
  visibility: hidden;
}

// --------------------------------------------------------Float
.floatL,
.fl {
  float: left;
}

.floatR,
.fr {
  float: right;
}

// --------------------------------------------------------Text-align
.text-right,
.text-r,
.t-r {
  text-align: right;
}

.text-center,
.text-c,
.t-c {
  text-align: center
}

// --------------------------------------------------------width
.w-50 {
  width: 50%;
}

.w-100 {
  width: 100% !important;
}

// --------------------------------------------------------height

.h-100 {
  height: 100% !important;
}

.h-50 {
  height: 50% !important;
}

// --------------------------------------------------------Display
.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.flex {
  display: flex;
}

// --------------------------------------------------------Flex
.just-center {
  justify-content: center !important;
}

.just-between {
  justify-content: space-between !important;
}

.just-around {
  justify-content: space-around !important;
}

.just-start {
  justify-content: flex-start !important;
}

.just-end {
  justify-content: flex-end !important;
}

.align-center {
  align-items: center;
}

.align-start {
  align-items: flex-start;
}

.align-end {
  align-items: flex-end;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-column {
  flex-direction: column;
}

.flex-row {
  flex-direction: row !important;
}

// --------------------------------------------------------Ellipse
@mixin ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  @content;
}

.ellipsis-1 {
  @include ellipsis;
  white-space: nowrap;
}

.ellipsis-2 {
  @include ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.ellipsis-3 {
  @include ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

// --------------------------------------------------------Margin | Padding | BorderRadius | Flex|fontSize
@for $i from 1 through 50 {

  .m-#{$i},
  .margin-#{$i} {
    margin:#{$i}px
  }

  ;

  .ml-#{$i} {
    margin-left:#{$i}px
  }

  ;

  .mr-#{$i} {
    margin-right:#{$i}px
  }

  ;

  .mt-#{$i} {
    margin-top:#{$i}px
  }

  ;

  .mb-#{$i} {
    margin-bottom:#{$i}px
  }

  ;

  .mlr-#{$i},
  .mrl-#{$i} {
    margin-left:#{$i}px;
    margin-right:#{$i}px
  }

  ;

  .mtb-#{$i},
  .mbt-#{$i} {
    margin-top:#{$i}px;
    margin-bottom:#{$i}px
  }

  ;

  .p-#{$i},
  .padding-#{$i} {
    padding:#{$i}px
  }

  ;

  .pl-#{$i} {
    padding-left:#{$i}px
  }

  ;

  .pr-#{$i} {
    padding-right:#{$i}px
  }

  ;

  .pt-#{$i} {
    padding-top:#{$i}px
  }

  ;

  .pb-#{$i} {
    padding-bottom:#{$i}px
  }

  ;

  .border-r-#{$i},
  .b-r-#{$i},
  .br-#{$i} {
    border-radius:#{$i}px
  }

  ;

  .flex-#{$i} {
    flex:#{$i}
  }

  ;

  .fs-#{$i} {
    font-size:#{$i}px
  }

  ;
}


// --------------------------------------------------------pointer
.pointer {
  cursor: pointer;
}

